package 哈希值;
/*哈希值
是JDK根据对象的地址或者字符串或者数字算出来的int类型的数值

Object类中有一个方法可以获取对象的哈希值
public int hashCode:返回对象的哈希码值

同一个对象调用多次hashCode方法返回的哈希值是相同的
不同对象的哈希值不相同（默认情况下使用Object类，通过方法重写可以使不同对象的哈希值相同)
字符串会重写hashCode方法
 */

public class HashDemo {
    public static void main(String[] args) {
        Student s1=new Student("姜恒星",30);

        //同一个对象调用多次hashCode方法返回的哈希值是相同的
        System.out.println(s1.hashCode());//460141958
        System.out.println(s1.hashCode());//460141958
        System.out.println("--------");

        //不同对象的哈希值不相同（默认情况下使用Object类，通过方法重写可以使不同对象的哈希值相同）
        Student s2=new Student("姜",20);
        System.out.println(s2.hashCode());//1163157884
        System.out.println(s2.hashCode());//1163157884
        System.out.println("--------");

        System.out.println("hello".hashCode());//99162322
        System.out.println("world".hashCode());//113318802
        System.out.println("java".hashCode());//3254818

        System.out.println("world".hashCode());//113318802
        System.out.println("--------");

        System.out.println("种地".hashCode());//988931
        System.out.println("通话".hashCode());//11793951179395
    }
}
